﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using IMaverick.Physics.Extensions;

namespace IMaverick.Physics
{
    public class Frequency : Dimension<Frequency>
    {
        static Frequency()
        {
            InitializeOrdersOfMagnitude("Hz");
        }

        public static Frequency Hertz { get { return new Frequency(); } }
        public static Frequency Kilohertz { get { return GetNewInstanceFor(OrderOfMagnitude.Kilo); } }
        public static Frequency Megahertz { get { return GetNewInstanceFor(OrderOfMagnitude.Mega); } }
        public static Frequency Gigahertz { get { return GetNewInstanceFor(OrderOfMagnitude.Giga); } }
        public static Frequency Decihertz { get { return GetNewInstanceFor(OrderOfMagnitude.Deci); } }
        public static Frequency Centihertz { get { return GetNewInstanceFor(OrderOfMagnitude.Centi); } }
        public static Frequency Millihertz { get { return GetNewInstanceFor(OrderOfMagnitude.Milli); } }
        public static Frequency Microhertz { get { return GetNewInstanceFor(OrderOfMagnitude.Micro); } }
    }
}
